﻿//Autor: Sérgio Santos nº 5626

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SQLite;

namespace estiglp1112_5626_csharp_rec
{
    
    
    
    public partial class Form1 : Form
    {
        Dados newDados = new Dados();
        
        public Form1()
        {
            InitializeComponent();
        }
     
        /**
         * Neste Metodo é efetuado leitura dos ficheiros .csv 
         * e inserido na base de dados, é tambèm efetuado o carregamento das combobox's.!
         * */
        private void button2_Click(object sender, EventArgs e)
        {
            this.textBox1_Inform.Clear();

            this.textBox1_Inform.AppendText("Aguarde a carregar Dados");

            this.newDados.criar_DB();

            this.newDados.Carregar_Dados();

            this.comboBox1.Items.Clear();

            for (int i = 0; i < 11; i++)
            {
                this.comboBox1.Items.Add(2000 + i);
            }
            this.newDados.getDadosComboBoxs();

            this.comboBox2.Items.AddRange(this.newDados.getComboBox_Categoria().ToArray());

            this.comboBox3.Items.AddRange(this.newDados.getComboBox_Estabelecimento().ToArray());

            this.textBox1_Inform.Clear();

            this.textBox1_Inform.AppendText("Dados Carregados!");
        }
        /**
         * É chamado o metodo que efetua a estatistica Numero de Estabelecimentos por Ano! 
         * 
         * */
        private void Numero_Estabelecimento_Por_Ano_Click(object sender, EventArgs e)
        {
            this.textBox1_Num_Estab.Clear();

            this.newDados.Numero_Estabelecimentos_Por_Ano("" + this.comboBox1.SelectedItem + "");

            try
            {
                this.textBox1_Num_Estab.AppendText("" + this.newDados.getNumeroEstabelecimentoPorAno() + "");
            }
            catch (NullReferenceException )
            {
                this.textBox1_Num_Estab.AppendText("Falta Ano Lectivo");
            }
        }

        /**
         * Metodo efetua estatistica(nº de docentes) 
         * com determinadas carateristicas.(grau, estab, ano)
         * */
        private void Num_Doc_Cat_Click(object sender, EventArgs e)
        {
            this.textBox1_Num_Doc_Cate.Clear();

            this.newDados.Numero_Docentes_Categoria(""+this.comboBox2.SelectedItem+"");

            this.textBox1_Num_Doc_Cate.AppendText(""+this.newDados.getNumero_Docentes_Categoria()+"");
        }
        /**
         * Metodo para fechar a aplicação..
         **/
        private void button3_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        private void Num_Doc_Estab_Click(object sender, EventArgs e)
        {
            this.textBox1_Num_Doc_Estab.Clear();

            this.newDados.Numero_Docentes_Estabelecimento(""+this.comboBox3.SelectedItem+"");

            this.textBox1_Num_Doc_Estab.AppendText("" + this.newDados.getNumero_Docentes_Estabelecimento() + "");
        }

        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {

        }

        private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
        {

        }

        private void comboBox3_SelectedIndexChanged(object sender, EventArgs e)
        {

        }


    }
}
